1. Technical Field
This disclosure relates to arrays, and more particularly to array calculations to find local maxima.
2. Description of the Related Art
More than ever, touchscreens have become commonplace as a user interface and input mechanism for many types of electronics devices. Many such devices are portable devices, and have embedded processors or microcontrollers to support the touchscreen and other input/output services.
A typical touchscreen may generate a set of two-dimensional sensor readings that firmware interprets to determine the locations of the largest sensor reading (or local maxima) compared to the nearest neighbor nodes. Determining this in a low cost 8-bit microcontroller can be challenging due to the amount of processing that is required. One conventional technique to find the local maxima involves performing comparisons of every touch strength value with as many as eight neighboring nodes. The processing can take a long time for a slow microcontroller. Further complicating the problem are the situations such as additional fingers touching the panel, or when neighbor nodes at the local maxima have the same sensor value (“plateau”), for example.